package xyz.xtt.pay.client.request;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotNull;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import xyz.xtt.pay.api.enums.PayOrderBusinessTypeEnum;

@Schema(name = "创建订单请求参数", description = "创建订单请求参数")
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Data
public class MakeOrderRequest {
	/**
	 * @see PayOrderBusinessTypeEnum#name()
	 */
	@Schema(description = "订单类型")
	@NotNull(message = "订单类型不能为空")
	private String orderType;
	@Schema(description = "购买数量")
	private int purchaseAmount;
	@Schema(description = "支付结果落地页url")
	private String backUrl;
	@Schema(description = "资产账户id")
	private String assetAccountId;
	@Schema(description = "资产审核记录id")
	private String assetAuditId;
	@Schema(description = "资产编号表id")
	private String assetNoId;
	@Schema(description = "收货地址id")
	private String receiveAddressId;
}